#define _CRT_SECURE_NO_WARNINGS
#include <iostream>
#include <vector>

using namespace std;

int path = 0;
int ret = 0;

int subsetXORSum(vector<int>& nums) {
    dfs(nums, 0);
    return ret;
}

void dfs(vector<int>& nums, int pos)
{
    ret += path;
    for (int i = pos; i < nums.size(); ++i)
    {
        path ^= nums[i];
        dfs(nums, i + 1);
        path ^= nums[i];
    }
}


int main()
{
    vector<int> dp = { 1,2,3 };
    
	return 0;
}